1. Technical Field
The present invention relates in general to improved data storage systems and in particular to methods and systems for detection of synchronization characters within data stored within a data storage system. Still more particularly, the present invention relates to improved methods and systems for error tolerant detection of synchronization characters within data stored in a data storage system.
2. Description of the Related Art
Modern data processing systems often use digital signal recording devices attached to host processors to record records as addressable units within magnetic tape storage systems.
Examples of systems which may be utilized to record records within a magnetic tape storage system are disclosed within Milligan et al., U.S. Pat. No. 4,393,445; Milligan et al, U.S. Pat. No. 4,435,762; Videki II, U.S. Pat. No. 4,471,4.57; Cole et al., U.S. Pat. No. 4,603,382; Bauer et al., U.S. Pat. No. 4,423,480; and Fry et al., U.S. Pat. No. 4,403,286. Each of the aforementioned patents discloses a magnetic tape storage system which may be advantageously employed in carrying out the method and system of the present invention.
In such data storage systems, it is practically a necessity that each track of data within the recording medium include multiple synchronization characters. Such bit/byte synchronization characters are necessary so that the data may be considered self-synchronizing. Without such self-synchronizing, data may not be successfully recovered. This self-synchronizing is typically accomplished by inserting various synchronization characters between small blocks or sets of data signals so that the data stored therein may be accurately and efficiently recovered.
A problem which occurs in the detection of such synchronization characters is that data written to storage media often becomes difficult to recover at a later time due to various factors, such as media wear, head wear and errors introduced as a result of interchange of the media between two storage subsystems. Systems which utilize so-called "Block Error Correction" codes and modulation codes to recover bad data rely upon the detection of synchronization character patterns to achieve synchronization. Thus, a failure to detect synchronization characters as a result of even small errors contained therein will cause a loss of synchronization until the occurrence of the next synchronization character, severely degrading the correction capability of Error Correction Code (ECC). Additionally, higher linear track densities also make synchronization character detection sensitive to the channel and often results in an occasional bit error or bit shift error within a synchronization character.
The use of error correction codes within synchronization characters to correct these problems levies an additional requirement that the synchronization character be an ECC code word and satisfy the code constraints, such that the demodulator may initiate properly. In addition, in systems which utilize multiple diverse synchronization characters, this requirement becomes increasingly difficult to implement. Also, synchronization characters which meet: this ECC requirement may not be "channel friendly." Another solution, so-called "voting" with regard to the detection of synchronization characters, also may be utilized to increase tolerance for erroneous bits within a synchronization character; however, such systems require a much larger synchronization character which deleteriously affects media capacity.
It should therefore be obvious that a need exists for a method and system which may accurately detect the occurrence of synchronization characters within a data storage system, but which is tolerant of small errors within a synchronization character without requiring additional format overhead or adding additional detection delay.